Top-Up

This API is used to add money or allowances to a prepaid balance of a billing plan (individual offer).

The customer is not allowed to top-up a plan of the RATE type.

HTTP URL

 

POST

/api/v2/subscriber/{type}/{value}/offer/{id}/topup

NOTE: All {type} and {value} pairs, define the search criteria. Valid {type} ENUMs are: ‘imsi’, ‘iccid’, ‘msisdn’, ‘imei’.

Eligibility

The requesting customer is allowed to top-up sub customers only. It is not allowed to top-up itself or top-up any other sub customer level.

API Request

Request Structure

Parameter

Type

M/O/CM

Description

charge

Decimal

M

Top-up cost. Charge of post-paid balance

currency

String

M

Monetary currency. For example, USD, GBP, EUR

expirationDate

Date

O

Determines the requested date as per the selected expirationType set when plan created.

Can be used only if the expirationType parameter has been set to FIXED.

Ignored for other expirationType settings.

allowance

Object

CM

Array of allowance per service

Mandatory for plan of type USAGE’

Ignored if filled in for plan of type MONEY

Allowance data objects

Element

Type

M/O/CM

Description

currency

String

M

Allowance:

SMS: (Number of) SMSs

Data: KB, MB, GB

value

Decimal

M

Balance amount

API Response

Response Structure

Parameter

Type

M/O/CM

Description

errorCode

String

O

Failure code.

errorMessage

String

O

Failure message.

content

Object

O

Array of main response body object displayed when an API call was successful. For a failure, it will be empty.

pageable

Object

O

Paging information object displayed when an API call was successful. For a failure, it will be empty.

Content data objects

Element

Type

M/O/CM

Description

requestId

UUID

M

Request instance ID.

To be used by external systems to query the call (operation) status:

In progress

Successful

Failed.

Pageable data objects

Element

Type

M/O/CM

Description

page

Numeric

M

Page number

size

Numeric

M

Page size. Number of requested elements per page

totalPages

Numeric

M

Total amount of available pages per requested page size

totalElements

Numeric

M

Total amount of retrieved elements

Error Codes

In addition to the general success and failure codes, the following error codes are possible.

Code

Message

GLOBAL_1001

Service unavailable. Please try again

SUBSCRIBER_1002

Subscriber does not exist

SUBSCRIBER_1009

Top-up failure. Balance not found

SUBSCRIBER_1013

Top-up failure. It is not allowed to top-up to Pool Plan using this API

Examples

Request Body

Copy
{
  "charge": 20.5,
  "currency": "EUR",
  "expirationDate": "25042023",
  "allowance": [
    {
      "currency": "SMS",
      "value": 50
    }
  ]
}

Response Body: Success ACK

Copy
{
  "errorCode": "",
  "errorMessage": "",
  "content": [
    {
      "requestId":"e7fcef24-5c03-41dd-9e33-995b7d6f32b1" 
    }
    ],
    "pageable": {
    "page": 0,
    "size": 10,
    "totalPages": 1,
    "totalElements": 1
  }
}

Response Body: Failure NAK

Copy
{
  "errorCode": "SUBSCRIBER_1009",
  "errorMessage": "Top-up failure. Balance not found",
  "content": "",
  "pageable": ""
}